<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use DB;
class MemberController extends Controller
{
    private $db;
    public function __construct()
    {
        $this->db = DB::table('user');
    }
    //列表
    public function index(){
        // 查询所有用户
        $data = $this->db->get();

        // 将查询结果赋值给模板
        return view('member/index',compact('data'));
    }

    // 添加显示和添加处理
    public function create(Request $request){
        // 判断是否是post
        if($request->isMethod('post')){
            // 表单验证
            $this->validate($request,[
                'username' => 'required',
                'password' => 'required',
                'email' => 'required',
                'qq' => 'required'
            ]);
            // 不将token值添加进去
            $this->db->insert($request->except(['_token']));
            return redirect(route('user/index'));
        }
        return view('member/create');
    }

    // 修改显示
    public function edit(int $id){
        // 根据ID查询单条数据
        $info = $this->db->where('id',$id)->first();

        // 渲染页面
        return view('member/edit',compact('info'));
    }

    // 修改处理
    public function update(Request $request,int $id){
        // 表单验证
        $this->validate($request,[
            'username' => 'required',
            'password' => 'required',
            'email' => 'required',
            'qq' => 'required'
        ]);

        // 修改
        $this->db->where('id',$id)->update($request->except(['_token','_method']));

        // 跳转回首页
        return redirect(route('user/index'));
    }

    // 删除
    public function delete(int $id) {
        $this->db->where('id',$id)->delete();

        return ['stauts'=>0,'msg'=>'删除成功'];
    }
}
